<html dir="ltr" xmlns:MSHelp="http://msdn.microsoft.com/mshelp" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns:xlink="http://www.w3.org/1999/xlink">
  <head>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
    <meta name="save" content="history" />
    <xml>
      <MSHelp:TOCTitle Title="Service Operations" />
      <MSHelp:RLTitle Title="Service Operations" />
      <MSHelp:Attr Name="DocSet" Value="docSet" />
      <MSHelp:Attr Name="TopicType" Value="kbOrient" />
      <MSHelp:Attr Name="Locale" Value="kbEnglish" />
      <MSHelp:Attr Name="AssetId" Value="{GUID}" />
    </xml>
    <title>Service Operations</title>
    <link rel="stylesheet" type="text/css" href="../local/Classic.css" />
    <script src="../local/EventUtilities.js" type="text/javascript" language="jscript"> </script>
    <script src="../local/SplitScreen.js" type="text/javascript" language="jscript"> </script>
    <script src="../local/Dropdown.js" type="text/javascript" language="jscript"> </script>
    <script src="../local/script.js" type="text/javascript" language="jscript"> </script>
  </head>
  <body>
    <input type="hidden" id="userDataCache" class="userDataStyle" />
    <input type="hidden" id="hiddenScrollOffset" />
    <img id="dropDownImage" style="display:none; height:0; width:0;" alt="DropDown image" src="../local/drpdown.gif" />
    <img id="dropDownHoverImage" style="display:none; height:0; width:0;" alt="DropDownHover image" src="../local/drpdown_orange.gif" />
    <img id="collapseImage" style="display:none; height:0; width:0;" alt="Collapse image" src="../local/collapse_all.gif" />
    <img id="expandImage" style="display:none; height:0; width:0;" alt="Expand image" src="../local/expand_all.gif" />
    <img id="collapseAllImage" style="display:none; height:0; width:0;" alt="CollapseAll image" src="../local/collall.gif" />
    <img id="expandAllImage" style="display:none; height:0; width:0;" alt="ExpandAll image" src="../local/expall.gif" />
    <img id="copyImage" style="display:none; height:0; width:0;" alt="Copy image" src="../local/copycode.gif" />
    <img id="copyHoverImage" style="display:none; height:0; width:0;" alt="CopyHover image" src="../local/copycodeHighlight.gif" />
    <div id="header">
      <table width="100%" id="topTable">
        <tr id="headerTableRow1">
          <td align="left">
            <span id="runningHeaderText">OData Service for Team Foundation Server 2010 (Beta)</span>
          </td>
        </tr>
        <tr id="headerTableRow2">
          <td align="left">
            <span id="nsrTitle">Service Operations</span>
          </td>
        </tr>
        <tr id="headerTableRow3">
          <td />
        </tr>
      </table>
      <table width="100%" id="bottomTable" cellspacing="0" cellpadding="0">
        <tr>
          <td>
            <span onclick="ExpandCollapseAll(toggleAllImage)" onkeypress="ExpandCollapseAll_CheckKey(toggleAllImage)" tabindex="0" style="cursor:default;display:none;">
              <img id="toggleAllImage" class="toggleAll" alt="CollapseAll image" src="../local/collall.gif" />
              <label id="collapseAllLabel" for="toggleAllImage" style="display: none;">Collapse All</label>
              <label id="expandAllLabel" for="toggleAllImage" style="display: none;">Expand All</label> </span>
            <span id="languageFilterToolTip" onmouseover="languageFilterImage.src=dropDownHoverImage.src;" onmouseout="languageFilterImage.src=dropDownImage.src;" tabindex="0" style="cursor:default;">
              <img id="languageFilterImage" alt="DropDown image" src="../local/drpdown.gif" />
              <label id="showAllLabel" for="languageFilterImage" style="display: none;">Language Filter: All</label>
              <label id="multipleLabel" for="languageFilterImage" style="display: none;">Language Filter: Multiple</label>
              <label id="vbLabel" for="languageFilterImage" style="display: none;">Language Filter: Visual Basic</label>
              <label id="csLabel" for="languageFilterImage" style="display: none;">Language Filter: C#</label>
            </span>
          </td>
        </tr>
      </table>
      <div id="languageSpan">
        <input type="checkbox" name="languageFilter" onclick="SetLanguage(this)" id="vbUsageCheckbox" />
        <label class="languageFilter" for="vbUsageCheckbox">Visual Basic Usage</label>
        <br />
        <input type="checkbox" name="languageFilter" onclick="SetLanguage(this)" id="csCheckbox" />
        <label class="languageFilter" for="csCheckbox">C#</label>
        <br />
      </div>
    </div>
    <div id="mainSection">
      <div id="mainBody">
        <div id="allHistory" class="saveHistory" onsave="saveAll()" onload="loadAll()" />
        <p>The following table contains the operations supported by the current version of the OData service for TFS. Some of the operations also support some of the <a href="http://www.odata.org/developers/protocols/uri-conventions">Query Options</a> defined in the OData Protocol, like <i>$count</i>, <i>$skip</i>, <i>$filter</i>, <i>$select</i> and <i>$value</i>.</p>
        <div class="alert">
          <table width="100%" cellspacing="0" cellpadding="0">
            <tr>
              <th align="left">
                <img class="note" src="../local/note.gif" />Note:</th>
            </tr>
            <tr>
              <td><b>Important</b>: You need to provide a valid TFS Project Collection name at the beginning of the URL to be able to access the service (e.g. <i>https://codeplexodata.cloudapp.net/<b>TFSCollectionName</b>/</i>).</td>
            </tr>
          </table>
          <p />
        </div>
        <br />
        <table style="">
          <tr valign="top">
            <th>
              <p>Service Operations</p>
            </th>
            <th>
              <p>Supported Filter Operations</p>
            </th>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/Builds</b></p>
              <p><i>Gets all the Builds in the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <ul>
                <li>Users can filter for a specific value (<b>eq</b> operator) by Project, Definition, Number, Reason, Quality, Status and RequestedFor.</li>
                <li>Users can filter for a different value (<b>ne</b> operator) and range (<b>eq</b>, <b>gt</b>, <b>lt</b> operators) by RequestedBy, StartTime, FinishTime and BuildFinished.</li>
                <li>Only logical <b>And</b> operator is supported.</li>
              </ul>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/Builds(Project='prjName',Definition='BuildDef',Number='BuildNum')</b></p>
              <p><i>Gets the Build with the build number equals to 'BuildNum' from the build definition 'BuildDef' belonging to the Team Project 'prjName' inside the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <p><i>Not Applicable.</i></p>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/Projects('prjName')/Builds</b></p>
              <p><i>Gets all the Builds in the Team Project named 'prjName' inside the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <ul>
                <li>Users can filter for a specific value (<b>eq</b> operator) by Project, Definition, Number, Reason, Quality, Status and RequestedFor.</li>
                <li>Users can filter for a different value (ne operator) and range (<b>eq</b>, <b>gt</b>, <b>lt</b> operators) by RequestedBy, StartTime, FinishTime and BuildFinished.</li>
                <li>Only logical <b>And</b> operator is supported.</li>
              </ul>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/Changesets</b></p>
              <p><i>Gets all the Changesets in the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <ul>
                <li>Users can filter for a specific value (<b>eq</b> operator) by Branch and Committer and for a range of values (<b>eq</b>, <b>gt</b> and <b>lt</b> operators) by CreationDate.</li>
                <li>Users can filter for a specific and a different value (<b>eq</b> and <b>ne</b> operators) by ArtifactUri, Comment and Owner.</li>
                <li>Only logical<b> And </b>operator is supported.</li>
              </ul>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/Changesets(id)</b></p>
              <p><i>Gets the Changeset with an id equals to 'id' in the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <p><i>Not Applicable.</i></p>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/Projects('prjName')/Changesets</b></p>
              <p><i>Gets all the Changesets in the Team Project named 'prjName' inside the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <ul>
                <li>Users can filter for a specific value (<b>eq</b> operator) by Committer and for a range of values (<b>eq</b>, <b>gt</b> and <b>lt</b> operators) by CreationDate.</li>
                <li>Users can filter for a specific and a different value (<b>eq</b> and <b>ne</b> operators) by ArtifactUri, Comment and Owner.</li>
                <li>Only logical <b>And</b> operator is supported</li>
              </ul>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/Changesets(id)/Changes</b></p>
              <p><i>Gets all the Changes in the Changeset with an id equals to 'id' in the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <ul>
                <li>All valid OData operations.</li>
              </ul>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/Changes(Changeset='id',Path='path')</b></p>
              <p><i>Gets the Change in the 'path' location for the Changeset with an id equals to 'id' inside the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <p><i>Not Applicable.</i></p>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/Builds(Project='prjName',Definition='BuildDef',Number='BuildNum')/Changesets</b></p>
              <p><i>Gets the Changesets associated with the Build with a build number equals to 'BuildNum' from the build definition 'BuildDef' belonging to the Team Project 'prjName' inside the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <ul>
                <li>All valid OData operations.</li>
              </ul>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/Branches('path')/Changesets</b></p>
              <p><i>Gets all the Changesets associated with the Branch in the 'path' location inside the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <p><i>Not Applicable.</i></p>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/Branches</b></p>
              <p><i>Gets all the Branches in the TFS Project Collection named 'TFSCollectionName'</i></p>
              <p><i>Supported Filter Operations: all</i></p>
            </td>
            <td>
              <ul>
                <li>Users can filter for a specific value (<b>eq</b> operator) by Committer and for a range of values (<b>eq</b>, <b>gt</b> and <b>lt</b> operators) by CreationDate.</li>
                <li>Users can filter for a specific and a different value (<b>eq</b> and <b>ne</b> operators) by ArtifactUri, Comment and Owner.</li>
                <li>Only logical <b>And</b> operator is supported.</li>
              </ul>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/Projects('prjName')/Branches</b></p>
              <p><i>Gets all the Branches in the Team Project named 'prjName' inside the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <ul>
                <li>All valid OData operations.</li>
              </ul>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/Branches('path')</b></p>
              <p><i>Gets the Branch in the 'path' location inside the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <p><i>Not Applicable.</i></p>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/WorkItems</b></p>
              <p><i>Gets all the Work Items in the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <ul>
                <li>Users can filter for a different (<b>ne</b> operator), a specific (<b>eq</b> operator), or a substring of a value (<b>substringof</b> operator) by AreaPath, IterationPath, Priority, Severity, StackRank, Project, AssignedTo, CreatedBy, ChangedBy, ResolvedBy, Title, State, Type, Reason, Description, ReproSteps, FoundInBuild and IntegratedInBuild.</li>
                <li>Users can filter for a different (<b>ne</b> operator), a specific (<b>eq</b> operator) or a range (<b>gt</b>, <b>lt</b>, <b>ge</b>, <b>le</b> operators) of values by CreatedDate, ChangedDate and Revision.</li>
                <li>Logical <b>And</b> and <b>Or</b> operators are supported.</li>
              </ul>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/WorkItems(id)</b></p>
              <p><i>Gets the Work Items with an id equals to 'id' in the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <p>All valid OData operations.</p>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/Builds(Project='prjName',Definition='BuildDef',Number='BuildNum')/WorkItems</b></p>
              <p><i>Gets the Work Items associated with the Build with a build number equals to 'BuildNum' from the build definition 'BuildDef' belonging to the Team Project 'prjName' inside the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <ul>
                <li>Users can filter for a different (<b>ne</b> operator), a specific (<b>eq</b> operator), or a substring of a value (<b>substringof</b> operator) by AreaPath, IterationPath, Priority, Severity, StackRank, Project, AssignedTo, CreatedBy,ChangedBy, ResolvedBy, Title, State, Type, Reason, Description, ReproSteps, FoundInBuild and IntegratedInBuild.</li>
                <li>Users can filter for a different (<b>ne</b> operator), a specific (<b>eq</b> operator) or a range (<b>gt</b>, <b>lt</b>, <b>ge</b>, <b>le</b> operators) of values by CreatedDate, ChangedDate and Revision.</li>
                <li>Logical <b>And</b> and <b>Or</b> operators are supported.</li>
              </ul>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/Changesets(id)/WorkItems</b></p>
              <p><i>Gets all the Work Items associated with the Changeset with an id equals to 'id' in the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <ul>
                <li>All valid OData operations.</li>
              </ul>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/Projects('prjName')/WorkItems</b></p>
              <p><i>Gets all the Work Items in the Team Project named 'prjName' inside the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <ul>
                <li>Users can filter for a different (<b>ne</b> operator), a specific (<b>eq</b> operator), or a substring of a value (substringof operator) by AreaPath, IterationPath, Priority, Severity, StackRank, Project, AssignedTo, CreatedBy, ChangedBy, ResolvedBy, Title, State, Type, Reason, Description, ReproSteps, FoundInBuild and IntegratedInBuild.</li>
                <li>Users can filter for a different (<b>ne</b> operator), a specific (<b>eq</b> operator) or a range (<b>gt</b>, <b>lt</b>, <b>ge</b>, <b>le</b> operators) of values by CreatedDate, ChangedDate and Revision.</li>
                <li>Logical <b>And</b> and <b>Or</b> operators are supported.</li>
              </ul>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/Queries('id')/WorkItems</b></p>
              <p><i>Gets the Work Items resulting after running the Query with an id equals to 'id' inside the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <ul>
                <li>All valid OData operations.</li>
              </ul>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/WorkItems(id)/Attachments</b></p>
              <p><i>Gets all the Attachments for the Work Item with an id equals to 'id' in the Team Project named 'prjName' inside the TFS Project Collection named 'TFSCollectionName'.</i></p>
            </td>
            <td>
              <ul>
                <li>All valid OData operations.</li>
              </ul>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[POST]  /TFSCollectionName/WorkItems</b></p>
              <p><i>Creates a new Work Item in the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <p><i>Not Applicable.</i></p>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[PUT]  /TFSCollectionName/WorkItems(id)</b></p>
              <p><i>Updates the Work Item with an id equals to 'id' in the TFS Project Collection named 'TFSCollectionName'.</i></p>
            </td>
            <td>
              <p><i>Not Applicable.</i></p>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/Attachments('WorkItemId-Index')</b></p>
              <p><i>Gets the Attachment for the Work Item with an id equals to 'WorkItemId' and the Index equals to 'Index' inside the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <p><i>Not Applicable.</i></p>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[POST] /TFSCollectionName/Attachments</b></p>
              <p><i>Creates a new Attachment associated to a Work Item in the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <p><i>Not Applicable.</i></p>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/Projects</b></p>
              <p><i>Gets all the Team Projects in the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <ul>
                <li>All valid OData operations.</li>
              </ul>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/Projects('prjName')</b></p>
              <p><i>Gets the Team Project named 'prjName' in the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <p><i>Not Applicable</i></p>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/Queries</b></p>
              <p><i>Gets all the Queries in the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <ul>
                <li>All valid OData operations.</li>
              </ul>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/Projects('prjName')/Queries</b></p>
              <p><i>Gets all the Queries in the Team Project named 'prjName' inside the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <ul>
                <li>All valid OData operations.</li>
              </ul>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/Queries('id')</b></p>
              <p><i>Gets the Query with an id equals to 'id' in the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <p><i>Not Applicable.</i></p>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/AreaPaths</b></p>
              <p><i>Gets all the TFS Areas in the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <ul>
                <li>All valid OData operations.</li>
              </ul>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/Projects('prjName')/AreaPaths</b></p>
              <p><i>Gets all the TFS Areas in the Team Project named 'prjName' inside the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <ul>
                <li>All valid OData operations.</li>
              </ul>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/AreaPaths('path')</b></p>
              <p><i>Gets the TFS Area in the 'path' location inside the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <p><i>Not Applicable</i></p>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <p><b>[GET]  /TFSCollectionName/AreaPaths('path')/SubAreas</b></p>
              <p><i>Gets all the Subareas below the TFS Area in the 'path' location inside the TFS Project Collection named 'TFSCollectionName'</i></p>
            </td>
            <td>
              <ul>
                <li>All valid OData operations.</li>
              </ul>
            </td>
          </tr>
        </table>
        <br />
        <h1 class="heading">Next Step</h1>
        <p>
          <a href="docSet_e3217bcb-210e-49f9-b2d3-a06d543c4330.html">Known Issues</a>
        </p>
        <br />
      </div>
      <div id="footer">
        <div class="footerLine">
          <img src="../local/footer.gif" alt="Footer image" width="100%" height="3px" />
        </div>
    To give feedback.
  <p />Copyright © 2011 by Microsoft Corporation. All rights reserved.</div>
    </div>
  </body>
</html>